387 research outputs found

    Towards Automatic Generation of Short Summaries of Commits

    Full text link
    Committing to a version control system means submitting a software change to the system. Each commit can have a message to describe the submission. Several approaches have been proposed to automatically generate the content of such messages. However, the quality of the automatically generated messages falls far short of what humans write. In studying the differences between auto-generated and human-written messages, we found that 82% of the human-written messages have only one sentence, while the automatically generated messages often have multiple lines. Furthermore, we found that the commit messages often begin with a verb followed by an direct object. This finding inspired us to use a "verb+object" format in this paper to generate short commit summaries. We split the approach into two parts: verb generation and object generation. As our first try, we trained a classifier to classify a diff to a verb. We are seeking feedback from the community before we continue to work on generating direct objects for the commits.Comment: 4 pages, accepted in ICPC 2017 ERA Trac

    A Neural Model for Generating Natural Language Summaries of Program Subroutines

    Full text link
    Source code summarization -- creating natural language descriptions of source code behavior -- is a rapidly-growing research topic with applications to automatic documentation generation, program comprehension, and software maintenance. Traditional techniques relied on heuristics and templates built manually by human experts. Recently, data-driven approaches based on neural machine translation have largely overtaken template-based systems. But nearly all of these techniques rely almost entirely on programs having good internal documentation; without clear identifier names, the models fail to create good summaries. In this paper, we present a neural model that combines words from code with code structure from an AST. Unlike previous approaches, our model processes each data source as a separate input, which allows the model to learn code structure independent of the text in code. This process helps our approach provide coherent summaries in many cases even when zero internal documentation is provided. We evaluate our technique with a dataset we created from 2.1m Java methods. We find improvement over two baseline techniques from SE literature and one from NLP literature

    The Path and Enlightenment of Data-Driven Digital Transformation of Organizational Learning ——A Case Study of the Practice of China Telecom

    Get PDF
    This paper took China Telecom as a case. It has analyzed data-driven digital transformation in organizational learning, and summarized the methods and enlightenments of digital transformation

    Fabrication and characterizations of proton-exchanged LiNbO3 waveguides fabricated by inductively coupled plasma technique

    Get PDF
    This Letter reports the use of an inductively coupled plasma technique for fabrication of proton-exchanged (PE) LiNbO3 (LN) waveguides. Planar and stripe waveguides have been formed in Y-cut LN which are difficult to obtain with the conventional molten acid method due to the occurrence of surface damage. Secondary ion mass spectrometry, scanning electron microscopy, and infrared absorption spectrum characterization results revealed that a uniform vertical PE profile with a single low order crystal phase has been directly obtained as a result of this unique process. X-ray photoelectron spectroscopy characterization of the treated surface revealed the existence of NbO as the cause for a sometimes darkened surface and confirms the ability to completely restore the surface to LN by oxygen plasma treatment. Atomic force microscopy measurement confirms that good surface quality has been maintained after regeneration of the surface to LN

    Statement-based Memory for Neural Source Code Summarization

    Full text link
    Source code summarization is the task of writing natural language descriptions of source code behavior. Code summarization underpins software documentation for programmers. Short descriptions of code help programmers understand the program quickly without having to read the code itself. Lately, neural source code summarization has emerged as the frontier of research into automated code summarization techniques. By far the most popular targets for summarization are program subroutines. The idea, in a nutshell, is to train an encoder-decoder neural architecture using large sets of examples of subroutines extracted from code repositories. The encoder represents the code and the decoder represents the summary. However, most current approaches attempt to treat the subroutine as a single unit. For example, by taking the entire subroutine as input to a Transformer or RNN-based encoder. But code behavior tends to depend on the flow from statement to statement. Normally dynamic analysis may shed light on this flow, but dynamic analysis on hundreds of thousands of examples in large datasets is not practical. In this paper, we present a statement-based memory encoder that learns the important elements of flow during training, leading to a statement-based subroutine representation without the need for dynamic analysis. We implement our encoder for code summarization and demonstrate a significant improvement over the state-of-the-art.Comment: 10 pages 2 figure

    Women’s experience of episiotomy: a qualitative study from China

    Get PDF
    Objective: To describe women’s experience of episiotomy in urban China. Design: This is a semistructured, indepth interview with women after episiotomy. We analysed transcriptions using thematic analysis in Chinese. Emerging themes were debated in English to finalise interpretation. Setting: Two community health centres and four hospitals in Shanghai, China. Participants: Purposive sampling of 30 postpartum women who had experienced episiotomy; 25 were primiparous and 4 had deliveries by forceps. We interviewed health providers to complement the data. Results: We identified four main themes: (1) women’s views of the procedure vary considerably; (2) pain interferes with daily life for weeks; (3) long-term anxiety is a consequence for some, described as a ‘psychological shadow’; and (4) societal norms assume women will not complain. Conclusion: Women receive little information in advance about episiotomy, yet the procedure has a wide range of physical and psychological consequences. This includes long-term anxiety about the damage done to them as women
    • …
    corecore